/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package occho.data;

import java.sql.SQLException;
import java.util.List;
import occho.model.Asignatura;
import occho.model.Tema;

/**
 *
 * @author Jorge
 */
public interface TemaDAO {
    /**
     * Inserta un tama en la base de datos
     * @param tema
     * @param asig
     * @return true si el tema se inserta correctamente
     * @throws SQLException  
     */
    public boolean insertarTema(Tema tema, Asignatura asig) throws SQLException;
    
    /**
     * Borra un tema de la base de datos
     * @param tema
     * @return true si el tema se borra correctamente
     * @throws SQLException  
     */
    public boolean borrarTema(Tema tema) throws SQLException;
    
    /**
     * Selecciona un tema de la base de datos
     * @param tema
     * @return el tema seleccionado
     * @throws SQLException
     * @throws ClassNotFoundException  
     */
    public Tema seleccionarTema(Tema tema)throws SQLException,ClassNotFoundException;
    
    /**
     * Selecciona todos los temas de la base de datos
     * @return lista de temas de la base de datos
     * @throws SQLException
     * @throws ClassNotFoundException  
     */
    public List<Tema> seleccionarTemas()throws SQLException,ClassNotFoundException;
    
    /**
     * Selecciona todos los temas de una asignatura
     * @param asig
     * @return lista de temas de la asignatura
     * @throws SQLException
     * @throws ClassNotFoundException  
     */
    public List<Tema> seleccionarTemas(Asignatura asig) throws SQLException,ClassNotFoundException;
    
    
    
}
